Today, more and more homes and private networks have an Internet connection through an IP (Internet Protocol) based broadband access network suitable for receiving content that requires higher bandwidth, for example TV, Video-On-Demand, and Internet radio. “IPTV” is a term for the technology used when delivering broadcasted TV services over an IP network. Due to the nature of IP-based transport in an IPTV content delivery system, content providers are able to deliver selective content streams to end users. In this context an “end user” is defined as the user of a media player, in which received content of the end user's choice is presented. Further, the term “media player” represents any apparatus capable of receiving and presenting media content, such as e.g. a set-top-box connected to a TV, an internet radio receiver, a PC or a cellular telephone.
The selective content streams may be personalized i.e. specifically adapted for individual end users or for specified groups of end users. For example, such streams can be used to customize a program according to the end user's interest e.g. a special version in terms of content or quality, or specific camera sources or angles in a sports or reality TV show, or to deliver selective advertisements, or any additional information. The latter feature is of increasing interest to content providers, as it enables delivery of advertisements that are selected for a target viewer group, and provides options to exploit end user interests via a feedback channel.
Selective streams can be delivered by means of unicast bearers or multicast bearers. In the former case the streams are individualized, while the latter case refers to customized channels allowing a content provider to deliver streaming content to groups of end users, e.g. car enthusiasts, sports fans, elderly people, or teenagers, either based on a user profile or through a subscription model, including these types of options. This is also applicable to services like pay-per-view (PPV) where, for example, a movie is “broadcasted” to a limited set of receiving media players at a specified time. When delivering selective streams, e.g. containing personalized advertisements, to the end users combined with common, broadcasted content (TV, PPV, radio), the following problems may arise.
When changing within a channel from a common media stream to a selective media stream, or vice versa, seamless switching between the different media streams is desired. The switching can be considered seamless if it is achieved without the viewer experiencing any disturbing and unwanted delay during the presentation of a streaming session. Therefore, adequate synchronisation of the delivery of the common (i.e. non-selective) media stream with the delivery of selective media streams must be maintained during a streaming session. Failure to provide such synchronisation may result in disturbing interruptions, as well as loss of information in the media reaching the media player.
Furthermore, it is desirable to optimise the bandwidth utilisation in the network, both for the network operator wanting to utilise the resources of an operating network as efficiently as possible, as well as for the end users wanting to save costs when subscribing for media services. Therefore, it is desirable to avoid any undue transmission of media.
In the normal distribution of TV programs, advertisements are distributed without any distinction within the channel being received. Furthermore, the normal TV distribution does not provide the possibility for end users to customize a TV program. One available way of delivering personalized media (e.g. personally directed advertisements) is to use different unicast channels, being received by different media players. However, there are a number of concrete technical problems associated with the existing solutions, which will be explained below.
During a streaming session, a selective unicast or multicast stream needs to be synchronised with a common media stream so that the receiving media player is able to change presentation mode, from distributing the common media stream to an appropriate selective stream, or vice versa. Such a situation may occur at the beginning of an advertisement break in a chosen media session. Since there may be end users not having selected any personalization at all, and who will thus only receive a default selective media stream during the break in the common media stream distribution, the channel content must be kept streaming continuously. This fact imposes an extra load to the access network, which needs to support two media streams destined to a particular end user's media player in order to provide the content for that media player. It is obvious that more bandwidth is generally required for each extra unicast channel being used.
The Internet Group Management Protocol (IGMP) is used to manage the membership of IP multicast groups. IGMP is used by IP hosts and adjacent multicast routers to establish multicast group memberships, also being an integral part of the IP multicast specification. The Real time Streaming Protocol (RTSP) is a client-server multimedia presentation control protocol, designed to control multimedia streams delivered, for example, via the Real Time Protocol (RTP), including absolute positioning within the media stream, recording and possibly media player control.
So called “Leave” and “Join” operations, which are based on the IGMP and RTSP protocols, are commonly utilised for media streams operations. One major disadvantage with these operations is that they cause disturbing delays in the media sessions. It is therefore generally desirable to avoid these operations as much as possible when distributing media sessions.
In order to save bandwidth when delivering a media stream, comprising an encoded motion sequence in a video or the like, to a media player, an encoding scheme, such as for example the well known MPEG-2, is commonly used. Such a stream includes individual frames of pictures which are grouped together as a group of pictures (GOP), for display in a media player so that the viewer registers the video's spatial motion. These frames are typically divided into B- and P-frames, where an I-frame is short for intraframe. An I-frame is a single frame of digital content that the compressor examines independent of the preceding and following frames and stores all of the data needed to display that frame. Typically, I-frames are interspersed with P-frames and B-frames in a compressed video. A B-frame is short for bi-directional frame, or bi-directional predictive frame. As the name suggests, B-frames rely on their preceding and following frames. B-frames contain only the data that have changed from the preceding frame or are different from the data in the very next frame. A P-frame is short for predictive frame, or predicted frame. In a motion sequence, P-frames follow I-frames and contain only the data that have changed from the preceding I-frame (such as colour or content changes). Because of this, P-frames depend on the I-frames to fill in most of the data. In other words, the more I-frames occurring in the streams, the better quality of the video. However, I-frames contain the greatest amount of bits and therefore occupy more space on the storage medium or network bandwidth.
In order to achieve seamless switching between two media streams, the switch must be executed at a point in the network architecture where sufficient information can be retrieved in order to recover (decode) the original content. For example, switching seamlessly between two MPEG-2 encoded streams requires the switch to occur at a point where an I-frame, from which an entire picture can be generated, is present in the target media stream. Delays between successive I-frames can be in the order of seconds. The failure of the media player to discover a sent I-frame will therefore introduce disturbing delays to the streaming session.
The fact that the common media channel is still transmitted to the media player also after having switched to a selective media channel introduces another problem, as it imposes double bandwidth requirements on the access network. Thus, two media streams, i.e. the common media stream and one selective media stream, must be supported by the media player when tuned to receive the channel represented by the two streams. In addition, in a household or in a private network wherein a plurality of media players are tuned to different channels simultaneously, there is a need for even more bandwidth.